Numerous different types of analog and digital networks currently exist throughout the world. These networks are used to communicate information to devices which access such networks, and in many instances, eventually to the people who use such devices to obtain, view or use such information. Many known networks provide numerous users access to digitized information of all types, including raw data, text, graphics, video, audio, and audio-video. Digital information provided over networks is generally contained in files and referred to herein as content or media. The entities or devices which supply the files for others to view or access over such networks are referred to herein as content providers or media providers.
Networks can be classified according to geographic extent. For instance, local area networks (commonly called LANs) generally extend to distances less than one kilometer. Wide area networks (commonly called WANs) extend over distances greater than one kilometer. WANs can comprise many LANs linked together. For instance, the Internet and in particular the World Wide Web (commonly called the Web) is a form of a WAN. LANs can be found in private companies, universities, government agencies, online services, Internet service providers (commonly called ISPs) and other entities.
Networks can also be classified by the protocols they use. Protocols are sets of rules describing how data is transmitted across the network. Example protocols include the Transmission Control Protocol (commonly called TCP) which enables computers to communicate over the Internet, the Internet Protocol (commonly called IP) which ensures that data is sent to the right destination on a network such as the Internet, the Wireless Access Protocol (commonly called WAP) which enables cellular telephones and other wireless devices to access the Internet, and the User Datagram Protocol (commonly called UDP) for transmitting video over the network such as the Internet. Many other protocols exist.
Many networks operate primarily under a client/server model. Servers store and provide the client or client device with media, data, and other files or content the clients request from the servers. The servers are usually powerful computers having one or more processors or Central Processing Units (commonly called CPU's) and suitable storage capabilities. The client or client device is typically a user's desktop or laptop computer, which includes network access software that runs on the user's desktop or laptop computer. One type of software which facilitates access to such networks is commonly called a browser. Other types of physical devices can also function as clients. For example, clients can be cellular telephones, pagers, personal digital assistants (commonly called PDAs), communicators (which are a combination of cellular telephones and PDAs), set-tops used with interactive television, and digital or audio-visual watches. The client typically connects to a server on a network using a modem or other transmitter/receiver over telephone lines, cable or DSL lines, fiber optic lines, wireless communications, or other suitable methods.
To access and view content through a network such as the web, the user activates the network access software or browser located on the user's client device. The browser requests and downloads the requested content which is typically linked to a web page. As indicated above, the browser requires software to view requested content. This software is called a viewer or player. Viewer software may be part of the browser, or what is commonly called a plug-in. The viewer may also be unique software and not a plug-in to the browser. If the viewer is unique software, it may run even if the browser is closed. The viewer supplements the browser's ability to display media or other content to a user. The viewer is separate software that must often be purchased, and which permanently occupies computer memory and other resources. It should be appreciated that media and other content may be viewed using many different networks.
Clients such as cellular telephones, pagers, PDAs, communicators, set-tops, watches, and computers generally have different hardware including different CPUs or processors, use or have different operating systems for such hardware, and use or have different browsers or other network access software. For example, different computer clients may have different operating system environments such as LINUX®, UNIX®, WINDOWS 95®, WINDOWS 98®, WINDOWS 2000®, WINDOWS ME®, MACINTOSH®, and VXWORKS®. Another example is that different computer clients may include different browsers such as INTERNET EXPLORER® and NETSCAPE®, and PDAs may be provided with browser software such as ProxiWeb so the PDA can be used to access a network.
Accordingly, one problem with the delivery and viewing of media or other content over networks is that because different client devices have different hardware, use different operating systems, and use different browsers, there is a need for numerous different content viewers, each specifically designed to operate on the client for the client's particular hardware, operating system, and browser as well as different versions thereof. A user may, therefore, be required to purchase or download several viewers for the user's different client devices. For example, a user may have more than one computer. One of the user's computers may use a MACINTOSH® operating system with a NETSCAPE® browser, and the other may use WINDOWS 98® with INTERNET EXPLORER®. The same user may also own a cell phone and a PDA. The user must purchase or download different viewers for each of those devices. When the viewer software is upgraded, the user must also purchase or download the upgrades for each of these devices. Thus, a multitude of different viewers are currently needed for different client devices. It should also be appreciated that each different viewer permanently occupies memory on the respective client device. This may decrease the efficiency of the client device and the ability of the client device to perform other functions.
Another problem with media and other content delivery and viewing over networks is that once the content is placed on a network it may be freely downloaded, copied, or redistributed. Controlling access, and preventing copying of such content after it is released to the content provider is extremely difficult. For that reason, providers of proprietary content such as music and movies are inhibited from distributing content for public access on a network without an ability to restrict access to authorized users. Authorized users can include those who meet certain requirements such as age, or those who have paid a license fee to view the protected content.
Accordingly, a need exists for a media or other content delivery and viewing system and method that reduces or eliminates requirements for multiple viewers for different client devices. A need also exists for a media or other content delivery and viewing system and method that is transparent to users, and that does not permanently occupy client device memory and resources, or require periodic upgrades. A further need exists for a system and method that enables a content provider to securely distribute media or other content files.
Further, configuring a network-enabled device, such as a personal computer on a data network, a personal digital assistant (PDA) on a network, a cell phone, and the like, to receive multimedia bit-streams for the purpose of presenting full motion video and audio has historically required a complex series of tasks, including manually installing software to the device and updating the software manually when the device is no longer capable of processing the streams because of enhancements or changes in the characteristics of the streams. And while information Technology (IT) professionals have become adept at this process, this requires a costly overhead in an enterprise to maintain a staff sufficient to perform the manual steps and maintenance on each device. In many cases, full-time support professionals are required to process the manual steps for the general user community for which they are responsible. In some cases, this is cost-prohibitive. Alternatively, many environments have avoided incorporating A/V services on their networks because of the complexity and high maintenance costs associated with the process of manual installation of client applications.